home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / swingall.jar / javax / swing / text / html / TableView.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-07-15  |  4.1 KB  |  111 lines

  1. package javax.swing.text.html;
  2.  
  3. import java.awt.Graphics;
  4. import java.awt.Rectangle;
  5. import java.awt.Shape;
  6. import javax.swing.SizeRequirements;
  7. import javax.swing.event.DocumentEvent;
  8. import javax.swing.text.AttributeSet;
  9. import javax.swing.text.BoxView;
  10. import javax.swing.text.CompositeView;
  11. import javax.swing.text.Element;
  12. import javax.swing.text.StyleConstants;
  13. import javax.swing.text.View;
  14. import javax.swing.text.ViewFactory;
  15. import javax.swing.text.html.CSS.Attribute;
  16. import javax.swing.text.html.HTML.Tag;
  17.  
  18. class TableView extends javax.swing.text.TableView {
  19.    private AttributeSet attr;
  20.    private StyleSheet.BoxPainter painter;
  21.  
  22.    public TableView(Element var1) {
  23.       super(var1);
  24.       StyleSheet var2 = this.getStyleSheet();
  25.       this.attr = var2.getViewAttributes(this);
  26.    }
  27.  
  28.    void adjustSizeForCSS(int var1, SizeRequirements var2) {
  29.       if (var1 == 0) {
  30.          Object var3 = this.attr.getAttribute(Attribute.WIDTH);
  31.          if (var3 != null) {
  32.             int var4 = (int)((CSS.LengthValue)var3).getValue();
  33.             var2.minimum = var2.preferred = var4;
  34.             var2.maximum = Math.max(var2.maximum, var4);
  35.          }
  36.       } else {
  37.          Object var5 = this.attr.getAttribute(Attribute.HEIGHT);
  38.          if (var5 != null) {
  39.             int var6 = (int)((CSS.LengthValue)var5).getValue();
  40.             var2.minimum = var2.preferred = var6;
  41.             var2.maximum = Math.max(var2.maximum, var6);
  42.          }
  43.       }
  44.  
  45.    }
  46.  
  47.    protected SizeRequirements calculateMinorAxisRequirements(int var1, SizeRequirements var2) {
  48.       SizeRequirements var3 = super.calculateMinorAxisRequirements(var1, var2);
  49.       this.adjustSizeForCSS(var1, var3);
  50.       return var3;
  51.    }
  52.  
  53.    public void changedUpdate(DocumentEvent var1, Shape var2, ViewFactory var3) {
  54.       super.changedUpdate(var1, var2, this.createViewFactory(var3));
  55.    }
  56.  
  57.    protected javax.swing.text.TableView.TableRow createTableRow(Element var1) {
  58.       Object var2 = var1.getAttributes().getAttribute(StyleConstants.NameAttribute);
  59.       return var2 == Tag.TR ? new RowView(this, var1) : null;
  60.    }
  61.  
  62.    ViewFactory createViewFactory(ViewFactory var1) {
  63.       return new TableFactory(this, var1);
  64.    }
  65.  
  66.    public AttributeSet getAttributes() {
  67.       return this.attr;
  68.    }
  69.  
  70.    public float getMaximumSpan(int var1) {
  71.       return ((BoxView)this).getPreferredSpan(var1);
  72.    }
  73.  
  74.    protected StyleSheet getStyleSheet() {
  75.       HTMLDocument var1 = (HTMLDocument)((View)this).getDocument();
  76.       return var1.getStyleSheet();
  77.    }
  78.  
  79.    public ViewFactory getViewFactory() {
  80.       return this.createViewFactory(super.getViewFactory());
  81.    }
  82.  
  83.    public void insertUpdate(DocumentEvent var1, Shape var2, ViewFactory var3) {
  84.       super.insertUpdate(var1, var2, this.createViewFactory(var3));
  85.    }
  86.  
  87.    public void paint(Graphics var1, Shape var2) {
  88.       Rectangle var3 = (Rectangle)var2;
  89.       this.painter.paint(var1, (float)var3.x, (float)var3.y, (float)var3.width, (float)var3.height, this);
  90.       super.paint(var1, var3);
  91.    }
  92.  
  93.    public void removeUpdate(DocumentEvent var1, Shape var2, ViewFactory var3) {
  94.       super.removeUpdate(var1, var2, this.createViewFactory(var3));
  95.    }
  96.  
  97.    public void setParent(View var1) {
  98.       super.setParent(var1);
  99.       StyleSheet var2 = this.getStyleSheet();
  100.       this.painter = var2.getBoxPainter(this.attr);
  101.       this.setPropertiesFromAttributes();
  102.    }
  103.  
  104.    protected void setPropertiesFromAttributes() {
  105.       if (this.attr != null) {
  106.          ((CompositeView)this).setInsets((short)((int)this.painter.getInset(1, this)), (short)((int)this.painter.getInset(2, this)), (short)((int)this.painter.getInset(3, this)), (short)((int)this.painter.getInset(4, this)));
  107.       }
  108.  
  109.    }
  110. }
  111.